⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 class3.jc

📁 The JILRunOnly project is a simple command-line application written in ANSI-C that is intended to de
💻 JC
字号:

/*
 *	class3.jc
 *
 *	In this file, we're going to test auto conversion between types.
 *	Auto-conversion is performed, if the source class has a suitable
 *	convertor method for the destination type, or the destination type
 *	has a suitable constructor for the source type.
 */

import stdlib;

/*
 *	Just to come up with an example, a self-written string class.
 *	Of course it would be inefficient to use something like this
 *	instead of a native typelib string class.
 */

class CString
{
	method CString()					{ m_String = ""; }		// construct an empty CString
	method CString( const string& s )	{ m_String = s; }		// construct CString from string
	method const string& convertor()	{ return m_String; }	// convert a CString to string

	// our data member is a built-in string
	string m_String;
}

/*
 *	function main
 */

function string main()
{
	stdlib::Print("* Allocating a built-in string...\n");
	string builtin = "Hello world!";					// a built-in string
	stdlib::Print("Built-in string is: " + builtin + "\n");

	stdlib::Print("* Allocating an empty CString...\n");
	CString cstring = new CString();					// a self-written string class

	stdlib::Print("* Assigning built-in string to CString...\n");
	cstring = builtin;									// implicitly calls CString constructor to create CString from built-in
	stdlib::Print("CString is: " + cstring + "\n");		// implicitly converts CString into built-in string

	stdlib::Print("* Assigning a string literal to CString...\n");
	cstring = "Auto convert!";							// implicitly calls CString constructor to convert string literal into CString
	stdlib::Print("CString is: " + cstring + "\n");

	stdlib::Print("* Assigning CString to built-in string...\n");
	builtin = cstring;									// implicitly calls CString convertor to return a built-in string
	stdlib::Print("Built-in string is: " + builtin + "\n");

	return "";
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -