在 main() 之外调用函数[重复]

2023-12-01

我正在尝试这样做:

#include <iostream>
using namespace std;

class smth {
  public:
  void function1 () { cout<<"before main";}
  void function2 () { cout<<"after main";}
};

call function1();

int main () 
{
  cout<<" in main";
  return 0;
}
call funtion2();

我想传达这样的信息: “在主要之前” “在主要” “在主要之后”

我该怎么做?


你不能。至少不是那样。您应该能够通过将代码放入类构造函数和析构函数中,然后声明一个全局变量来解决它:

struct myStruct
{
    myStruct() { std::cout << "Before main?\n"; }
    ~myStruct() { std::cout << "After main?\n"; }
};

namespace
{
    // Put in anonymous namespace, because this variable should not be accessed
    // from other translation units
    myStruct myStructVariable;
}

int main()
{
    std::cout << "In main\n";
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 main() 之外调用函数[重复] 的相关文章

  • 为什么 F# 的默认集合是排序的,而 C# 的不是?

    当从 C 世界迁移到 F 最惯用的可能 思维方式时 我发现了这个有趣的差异 在 C 的 OOP mutable 世界中 默认的集合集合似乎是HashSet https learn microsoft com en us dotnet api
  • 单元测试验证失败

    我正在运行我的单元测试PostMyModel路线 然而 在PostMyModel 我用的是线Validate
  • 在路由mvc 4中添加公司名称

    我一直在尝试为 Facebook 等用户提供在 URL 中添加公司名称的选项 http localhost 50753 MyCompany Login 我尝试过不同的网址 但没有成功 routes MapRoute name Default
  • 有没有办法在 xcode 上使用 c++0x ?我想使用 gcc 4.4 或更高版本

    我想使用 gcc 4 4 或更高版本进行 iphone 开发 有人知道怎么做吗 不 你不知道 相信我 你不会 Apple 仍保留 gcc 4 2 1 因为 4 2 2 及更高版本使用 GPLv3 这意味着他们必须放弃对其平台的控制 对于 i
  • 检测wlan是否关闭

    任何人都可以给我一个提示 如何在 Windows Phone 上以编程方式检测 C 8 1 应用程序 不是 8 0 是否启用 禁用 WLAN 我不想更改这些设置 只是需要知道 该解决方案是一个 Windows 8 1 通用应用程序 Wind
  • 从代码中,如何创建对存储在附加属性中的对象的属性的绑定?

    我们有一个继承的附加属性来存储一个对象 在可视化树的更下方 我们希望从代码绑定到该对象的属性 通常我们像这样构建绑定的路径部分 var someBinding new Binding Path new PropertyPath Attach
  • 运行需要 MySql.Data 的内置 .NET 应用程序

    我在运行我编写的内置 NET 应用程序时遇到问题 我的应用程序使用最新的 MySql 连接器 该连接器安装在我的系统上 当我尝试将其添加为引用时 该连接器显示为 NET 4 Framwork 组件 当我在环境中以调试模式运行应用程序时 一切
  • 是否存在指向不同类型的指针具有不同大小的平台?

    C 标准允许指向不同类型的指针具有不同的大小 例如sizeof char sizeof int 是允许的 但是 它确实要求如果将指针转换为void 然后转换回其原始类型 它必须与其原始值进行比较 因此 从逻辑上来说 sizeof void
  • 在开关中使用“goto”?

    我看到了一个建议的编码标准 内容如下Never use goto unless in a switch statement fall through 我不跟 这个 例外 案例到底是什么样的 这证明了goto 此构造在 C 中是非法的 swi
  • Gwan C#,如何获取HTTP标头?

    我需要它来重写 url 以了解我正在处理哪个友好的 url 用于用户代理和其他东西 EDIT public class Gwan MethodImplAttribute MethodImplOptions InternalCall exte
  • 如何制作可启动程序?

    所以 这个问题可能看起来很奇怪 但假设我编译了 int main void int x 3 int y 4 int z x y 是否可以让CPU这样运行 如何 例如 这允许我写入监视器吗 如果我没记错的话 内存中有些地方可以写入要显示的内容
  • 将接口转换为其具体实现对象,反之亦然?

    在 C 中 当我有一个接口和几个具体实现时 我可以将接口强制转换为具体类型 还是将具体类型强制转换为接口 这种情况下的规则是什么 Java 和 C 中都允许这两个方向 向下转型需要显式转型 如果对象类型不正确 可能会抛出异常 然而 向上转换
  • 搜索实体的所有字段

    我正在尝试在客户数据库上实现 多功能框 类型的搜索 其中单个查询应尝试匹配客户的任何属性 这是一些示例数据来说明我想要实现的目标 FirstName LastName PhoneNumber ZipCode Mary Jane 12345
  • 引用/指针失效到底是什么?

    我找不到任何定义指针 引用无效在标准中 我问这个问题是因为我刚刚发现 C 11 禁止字符串的写时复制 COW 据我了解 如果应用了 COW 那么p仍然是一个有效的指针并且r以下命令后的有效参考 std string s abc std st
  • 如何从 Rx Subscribe 回调异步函数?

    我想回调 Rx 订阅中的异步函数 例如 像那样 public class Consumer private readonly Service service new Service public ReplaySubject
  • Linux mremap 不释放旧映射?

    我需要一种方法将页面从一个虚拟地址范围复制到另一个虚拟地址范围 而无需实际复制数据 范围很大 延迟很重要 mremap 可以做到这一点 但问题是它也会删除旧的映射 由于我需要在多线程环境中执行此操作 因此我需要旧映射能够同时使用 因此稍后当
  • 逆向工程 ASP.NET Web 应用程序

    我有一个 ASP NET Web 应用程序 我没有源代码 该 bin 包含 10 个程序集和一个 compiled 文件 我在 App Code dll 上使用 Reflector 它向我显示了类和命名空间之类的东西 但它太混乱了 有没有什
  • 使用 using 声明时,非限定名称查找如何工作?

    根据 C 标准 这是格式错误还是格式良好 namespace M struct i namespace N static int i 1 using M i using N i int main sizeof i Clang 拒绝它 GCC
  • INotifyPropertyChanged 和 propertyName

    我一直不确定它的含义propertyName实施时INotifyPropertyChanged 所以一般来说你实现INotifyPropertyChanged as public class Data INotifyPropertyChan
  • DataContractSerializer 事件/委托字段问题

    在我的 WPF 应用程序中 我正在使用DataContractSerializer序列化对象 我发现它无法序列化具有事件或委托声明的类型 考虑以下失败的代码 Serializable public abstract class BaseCl

随机推荐

  • jQuery:我可以自动将插件应用到动态添加的元素吗?

    我正在将我的 Web 应用程序转换为完全 AJAX 架构 我有一个最初加载的母版页和一个加载动态内容的 div 容器 我创建了一些 jQuery 插件 将它们应用于某些元素以扩展它们的功能 我通常会在每个页面加载期间按如下方式调用这些函数
  • 如何通过匹配 BeautifulSoup 中元素属性中的文本来获取元素

    我有这个代码 a title Next Page Results 1 to 60 href class smallfont gt a 我想抓住a元素并获取 href 我怎样才能匹配title属性与Next Page 我想部分匹配标题属性中的
  • 限制 Git 分支访问的方法?

    我的 git 存储库中有四个分支 使用 GitHub 进行管理 生产 Staging Master 人名 发展 有没有办法限制对单个分支 人名 开发 的写访问 我该怎么做 类似问题 供参考 如何编写 git hook 来限制写入分支 使用
  • 哪个 Django 表单字段可以为我提供 的 HTML 输出?

    我有一个带有此输入的 html 表单
  • 开发模式下的GWT + JSTL——可能吗?

    我有一个 GWT 应用程序 由 roo 生成 我决定使用 Spring Security 来保护它 Roo 生成一个 login jspx 页面作为安全设置的一部分 并且此 jspx 使用一些基本的 JSTL 标记库 当在开发模式下运行时
  • 包含标头时防止出现多个 #define

    来自 python 我对正确的方法有点困惑 我正在尝试将该库包含在我的项目中 https github com nothings stb blob master stb image h 为此 我必须在导入文件之前 define STB IM
  • 如何在 JPA2 中强制使用 @ManyToOne 字段?

    我正在为应用程序设计持久性存储库 我是新来的休眠 JPA2我遇到了麻烦创造更复杂的关系在这种情况下外部强制键 一个例子 只是在记事本上写的 所以不完全是这样 我有一个名为 Person 的顶级类 它可以担任多个职位 另一个类 如果我像这样映
  • 低延迟地从 IP 摄像机获取帧

    我当前正在使用此命令从 RTSP 流获取帧并从标准输出读取帧 ffmpeg nostdin rtsp transport tcp i
  • 如何仅在图像悬停时显示 fancybox 标题

    我正在使用Fancybox插件对于图像库 我想仅当用户将鼠标悬停在图像上时显示图像标题 我不知道要修改代码的哪一部分才能完成此任务 我尝试通过添加来编辑 CSSa hover声明如下 fancybox title over wrap 我什至
  • 将日期对象转换为日历对象[重复]

    这个问题在这里已经有答案了 因此 我从传入对象中获取以下形式的日期属性 Tue May 24 05 05 16 EDT 2011 我正在编写一个简单的辅助方法将其转换为日历方法 我使用以下代码 public static Calendar
  • MySQL Inner Join 有限制吗?

    我有这个查询来收集有关单个订单的信息 它变得非常复杂 我没有任何数据可以测试 所以我问 如果有人在小型和大型数据集中有这方面的经验 那么您可以或应该在单个查询中进行多少个连接是否有限制 将大型查询分成较小的部分是否明智 或者这不会产生重大影
  • 在 Delphi 线程中使用 CoInitialize

    我在 Delphi 程序的线程内使用 TIdHttp 和 TXMLDocument 现在我想知道 这些类是否使用 COM 对象 因此我需要在此线程中调用 CoInitialize 和 CoUninitialize 如果是 我是否必须在执行方
  • Clearcase 问题 [已关闭]

    Closed 这个问题需要调试细节 目前不接受答案 我负责我项目中的clearcase 我没有太多经验 我的问题是 现在我们在 cc 中的项目结构是一个包含 PROD PV ST DV 流的项目 如下所示 链接到屏幕截图 现在 如您所见 我
  • ECMAScript 6 和 ECMAScript Harmony 之间有什么区别?

    我有一段时间认为它们是同一件事 但我经常在博客或答案中看到措辞似乎暗示两者之间存在差异 即使 SO 有两个不同的标签 但它们的描述没有显示出任何明显的区别 我四处搜索了一下 这只增加了混乱 因为似乎我不是唯一一个不确定什么意思的人 这两个术
  • 异步和递归目录扫描,用于 Nodejs 和 Expressjs 中的文件列表

    In this 快递我正在尝试 递归地 获取路由文件中的所有 JSON 文件 data目录 其实我可以控制台日志您可以在其中看到的文件A Mark 但是一旦异步内容完成 我找不到将整组路径发送到视图的方法 一些帮助将非常感激 这是数据 da
  • 有没有办法使用正则表达式来获取第一个单词并替换引用的部分?

    我正在尝试更换相思船 只是复制内容时的占位符 第一个单词 即变量名 SCAFFOLDING new ItemBuilder Material valueOf ACACIA BOAT build SEAGRASS new ItemBuilde
  • 如何向 Winform C# 程序发送 2-3 个参数?

    如何向 Winform C 程序发送 2 3 个参数 例如 我会发送类似的东西MyProg exe 10 20 abc 在我的程序中我可以收到这些值 我不想显示 MyProg exe 它会在后台工作 提前致谢 打开你的Program cs这
  • freemarker 中的数字格式问题 - 在小数后进行舍入

    我正在使用 Freemarker 模板 我有一个十进制值 a 23 65 我只想检索以上值 a 23 6 lt Extract first number after decimal point gt 我使用过 number format e
  • 如何使用 PHP 获取 WAP 中的 MSISDN 号码?

    我开发了一个 WAP 应用程序 我想获取访问我的网站的用户的 MSISDN 我的运营商已将我的 WAP 应用程序列入白名单 我在几部三星手机上成功获得了 MSISDN 但在诺基亚 黑莓和 iPhone 设备上却没有获得相同的结果 请建议我获
  • 在 main() 之外调用函数[重复]

    这个问题在这里已经有答案了 我正在尝试这样做 include