`
izuoyan
  • 浏览: 8932519 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

C++ VS C#(2):字符串,命名空间

阅读更多

//=====================================================================
//TITLE:
// C++ VS C#(2):字符串,命名空间
//AUTHOR:
// norains
//DATE:
// Tuesday 30-November-2010
//Environment:
// Visual Studio 2010
// Visual Studio 2005
//=====================================================================

1.字符串

无论是C++还是C#,都支持字符串,都可以用string来进行保存。不过,string在C#中是内置类型,但在C++里却必须要借助于STL。还有一点很有意思的是,string在C#中存储的是UNICODE,但在C++却是ANSIC。如果要让C++支持UNICODE的字符串,则必须使用wstring。

这两种语言,对于字符串都可以这样操作:

如果字符串带有换行或别的转意字符,都可以使用“\”来表示,如:

但C#有个增强的特性,可以在第一个引号前加“@”,表示在“@”之后,“;”之前的引号的内容原封不动作为数值。简单点说,上面的两个语句,用C#还可以以这种形式表示:


2.命名空间

C++和C#都支持命名空间,也就是namespace,并且都支持嵌套,如:

虽然声明一致,但使用上却大相径庭。对于C++来说,命名空间的必须使用“::”来进行标注,如:

但C#却是采用“.”:

如果以操作的观点来看,本例中的Type在C++中更像是类的类型,而C#则是对象的类型。

还有一个很有意思的区别,C#不能直接在命名空间中直接声明变量或函数,如:

这个代码段在C++能够很完美地进行编译,但在C#中却会提示出错:error CS0116: A namespace cannot directly contain members such as fields or methods

分享到:
评论

相关推荐

    在一小时内学会 C#(txt版本)

    命名空间的概念和 C++ 完全一样,但我们在 C# 中比在 C++ 中更加频繁的使用命名空间。你可以用点(.)定界符访问命名空间中的类。上面的 Hello World 程序中,MyNameSpace 是其命名空间。 现在思考当你要从其他命名...

    C++入门经典(第9版) ([美]Walter Savitch著) 中文pdf完整扫描版[302MB]

    第8章 字符串和向量 第9章 指针和动态数组 第10章 定义类 第11章 类中的友元函数、重载操作符和数组 第12章 独立编译和命名空间 第13章 指针和链表 第14章 递归 第15章 继承 第16章 异常处理 第17章 模板 第18章 ...

    ImHex软件.zip

    数组、指针、结构、联合、枚举、位域、命名空间、小端和大端支持、条件等等! 有用的错误信息、语法高亮和错误标记 数据导入 Base64 文件 IPS 和 IPS32 补丁 数据导出 IPS 和 IPS32 补丁 数据检查器允许将数据解释为...

    C# 程序设计手册(WORD)

    使用字符串方法搜寻字符串 66 使用正则表达式搜寻字符串 67 判断字符串是否表示数值 70 将 String 转换为 DateTime 71 在旧版编码方式和 Unicode 间转换 72 转换 RTF 为纯文本 74 语句、表达式和运算符 75 语句 76 ...

    C#微软培训资料

    18.2 在 C #代码中调用 C++和 VB 编写的组件 .240 18.3 版 本 控 制 .249 18.4 代 码 优 化 .252 18.5 小 结 .254 第五部分 附 录 .255 附录 A 关 键 字.255 附录 B 错 误 码.256 附录 C .Net 名字空间...

    c#学习笔记.txt

    若要在一个用 @ 引起来的字符串中包括一个双引号,请使用两对双引号:@ 符号的另一种用法是使用碰巧成为 C# 关键字的被引用的 (/reference) 标识符。 8, 修饰符 修饰符作用 访问修饰符 public private internal ...

    Visual C++ 2010入门经典(第5版)--源代码及课后练习答案

    4.5 字符串的本地C++库函数 174 4.5.1 查找以空字符结尾的字符串的长度 174 4.5.2 连接以空字符结尾的字符串 174 4.5.3 复制以空字符结尾的字符串 176 4.5.4 比较以空字符结尾的字符串 177 4.5.5 搜索以空字符...

    VA_X_Setup2443_0企业版

    新增对 C++20 样式嵌套内联命名空间定义的支持。(案例=141698) 新增对 ReSharper clang-tidy 跳过指令的代码检查支持。(案例=146304) 修复了在 Visual Studio 16.10+ 中启用 VA 的 CMAKE 项目中缺少的构建菜单项...

    数据结构与算法:语言描述(中英文)

    这是因为在C#语言中许多的数据处理是在字符串上执行的,读者应该接触基于这两种类的特殊方法。第8章分析了用于文本处理和模式匹配的正则表达式的使用。与较传统的字符串函数和方法相比,正则表达式常常会提供更强大...

Global site tag (gtag.js) - Google Analytics