{"id":23729,"date":"2024-03-16T01:56:25","date_gmt":"2024-03-16T01:56:25","guid":{"rendered":"https:\/\/www.silicloud.com\/blog\/how-to-assign-a-c-struct-to-another-struct\/"},"modified":"2024-03-22T01:58:39","modified_gmt":"2024-03-22T01:58:39","slug":"how-to-assign-a-c-struct-to-another-struct","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/blog\/how-to-assign-a-c-struct-to-another-struct\/","title":{"rendered":"How to assign a C# struct to another struct?"},"content":{"rendered":"<p>To assign one structure to another, you can use the assignment operator (=) or pass by reference.<\/p>\n<p>Here is an example of using assignment operators:<\/p>\n<pre class=\"post-pre\"><code><span class=\"hljs-keyword\">struct<\/span> MyStruct\r\n{\r\n    <span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-built_in\">int<\/span> Value;\r\n}\r\n\r\n<span class=\"hljs-comment\">\/\/ \u521b\u5efa\u4e00\u4e2a\u7ed3\u6784\u4f53\u5bf9\u8c61<\/span>\r\nMyStruct struct1;\r\nstruct1.Value = <span class=\"hljs-number\">10<\/span>;\r\n\r\n<span class=\"hljs-comment\">\/\/ \u5c06struct1\u8d4b\u503c\u7ed9struct2<\/span>\r\nMyStruct struct2 = struct1;\r\n\r\n<span class=\"hljs-comment\">\/\/ \u8f93\u51fa\u7ed3\u679c<\/span>\r\nConsole.WriteLine(struct2.Value); <span class=\"hljs-comment\">\/\/ \u8f93\u51fa 10<\/span>\r\n<\/code><\/pre>\n<p>In the example above, by assigning struct1 to struct2, the Value member in struct2 is given the same value as struct1.<\/p>\n<p>Here is an example of assignment by reference:<\/p>\n<pre class=\"post-pre\"><code><span class=\"hljs-keyword\">struct<\/span> MyStruct\r\n{\r\n    <span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-built_in\">int<\/span> Value;\r\n}\r\n\r\n<span class=\"hljs-comment\">\/\/ \u521b\u5efa\u4e00\u4e2a\u7ed3\u6784\u4f53\u5bf9\u8c61<\/span>\r\nMyStruct struct1;\r\nstruct1.Value = <span class=\"hljs-number\">10<\/span>;\r\n\r\n<span class=\"hljs-comment\">\/\/ \u901a\u8fc7\u5f15\u7528\u4f20\u9012\uff0c\u5c06struct1\u7684\u503c\u8d4b\u7ed9struct2<\/span>\r\n<span class=\"hljs-keyword\">ref<\/span> MyStruct struct2 = <span class=\"hljs-keyword\">ref<\/span> struct1;\r\n\r\n<span class=\"hljs-comment\">\/\/ \u4fee\u6539struct1\u7684\u503c<\/span>\r\nstruct1.Value = <span class=\"hljs-number\">20<\/span>;\r\n\r\n<span class=\"hljs-comment\">\/\/ \u8f93\u51fa\u7ed3\u679c<\/span>\r\nConsole.WriteLine(struct2.Value); <span class=\"hljs-comment\">\/\/ \u8f93\u51fa 20<\/span>\r\n<\/code><\/pre>\n<p>In this example, by passing a reference of struct1 to struct2 using the ref keyword, it means that struct2 points to the same memory location as struct1. Therefore, when we modify the value of struct1, the value of struct2 will also change accordingly.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>To assign one structure to another, you can use the assignment operator (=) or pass by reference. Here is an example of using assignment operators: struct MyStruct { public int Value; } \/\/ \u521b\u5efa\u4e00\u4e2a\u7ed3\u6784\u4f53\u5bf9\u8c61 MyStruct struct1; struct1.Value = 10; \/\/ \u5c06struct1\u8d4b\u503c\u7ed9struct2 MyStruct struct2 = struct1; \/\/ \u8f93\u51fa\u7ed3\u679c Console.WriteLine(struct2.Value); \/\/ \u8f93\u51fa 10 In the example above, [&hellip;]<\/p>\n","protected":false},"author":11,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[1],"tags":[],"class_list":["post-23729","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How to assign a C# struct to another struct? - Blog - Silicon Cloud<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.silicloud.com\/blog\/how-to-assign-a-c-struct-to-another-struct\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to assign a C# struct to another struct?\" \/>\n<meta property=\"og:description\" content=\"To assign one structure to another, you can use the assignment operator (=) or pass by reference. Here is an example of using assignment operators: struct MyStruct { public int Value; } \/\/ \u521b\u5efa\u4e00\u4e2a\u7ed3\u6784\u4f53\u5bf9\u8c61 MyStruct struct1; struct1.Value = 10; \/\/ \u5c06struct1\u8d4b\u503c\u7ed9struct2 MyStruct struct2 = struct1; \/\/ \u8f93\u51fa\u7ed3\u679c Console.WriteLine(struct2.Value); \/\/ \u8f93\u51fa 10 In the example above, [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/blog\/how-to-assign-a-c-struct-to-another-struct\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-03-16T01:56:25+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-03-22T01:58:39+00:00\" \/>\n<meta name=\"author\" content=\"Olivia Parker\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:site\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Olivia Parker\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-assign-a-c-struct-to-another-struct\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-assign-a-c-struct-to-another-struct\/\"},\"author\":{\"name\":\"Olivia Parker\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/3ff7b3da0e45ac5dbbef2502f3cea8d9\"},\"headline\":\"How to assign a C# struct to another struct?\",\"datePublished\":\"2024-03-16T01:56:25+00:00\",\"dateModified\":\"2024-03-22T01:58:39+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-assign-a-c-struct-to-another-struct\/\"},\"wordCount\":105,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-assign-a-c-struct-to-another-struct\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/how-to-assign-a-c-struct-to-another-struct\/\",\"name\":\"How to assign a C# struct to another struct? - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\"},\"datePublished\":\"2024-03-16T01:56:25+00:00\",\"dateModified\":\"2024-03-22T01:58:39+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-assign-a-c-struct-to-another-struct\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/blog\/how-to-assign-a-c-struct-to-another-struct\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-assign-a-c-struct-to-another-struct\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.silicloud.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to assign a C# struct to another struct?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"name\":\"Silicon Cloud Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\",\"name\":\"Silicon Cloud Blog\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"contentUrl\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"width\":1024,\"height\":1024,\"caption\":\"Silicon Cloud Blog\"},\"image\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\",\"https:\/\/twitter.com\/SiliCloudGlobal\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/3ff7b3da0e45ac5dbbef2502f3cea8d9\",\"name\":\"Olivia Parker\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/56c66f189ba32a6f9eb50f31a38fe774e2a725c213d4070835ccc51b8fbbc54b?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/56c66f189ba32a6f9eb50f31a38fe774e2a725c213d4070835ccc51b8fbbc54b?s=96&d=mm&r=g\",\"caption\":\"Olivia Parker\"},\"url\":\"https:\/\/www.silicloud.com\/blog\/author\/oliviaparker\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to assign a C# struct to another struct? - Blog - Silicon Cloud","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.silicloud.com\/blog\/how-to-assign-a-c-struct-to-another-struct\/","og_locale":"en_US","og_type":"article","og_title":"How to assign a C# struct to another struct?","og_description":"To assign one structure to another, you can use the assignment operator (=) or pass by reference. Here is an example of using assignment operators: struct MyStruct { public int Value; } \/\/ \u521b\u5efa\u4e00\u4e2a\u7ed3\u6784\u4f53\u5bf9\u8c61 MyStruct struct1; struct1.Value = 10; \/\/ \u5c06struct1\u8d4b\u503c\u7ed9struct2 MyStruct struct2 = struct1; \/\/ \u8f93\u51fa\u7ed3\u679c Console.WriteLine(struct2.Value); \/\/ \u8f93\u51fa 10 In the example above, [&hellip;]","og_url":"https:\/\/www.silicloud.com\/blog\/how-to-assign-a-c-struct-to-another-struct\/","og_site_name":"Blog - Silicon Cloud","article_publisher":"https:\/\/www.facebook.com\/SiliCloudGlobal\/","article_published_time":"2024-03-16T01:56:25+00:00","article_modified_time":"2024-03-22T01:58:39+00:00","author":"Olivia Parker","twitter_card":"summary_large_image","twitter_creator":"@SiliCloudGlobal","twitter_site":"@SiliCloudGlobal","twitter_misc":{"Written by":"Olivia Parker","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.silicloud.com\/blog\/how-to-assign-a-c-struct-to-another-struct\/#article","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-assign-a-c-struct-to-another-struct\/"},"author":{"name":"Olivia Parker","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/3ff7b3da0e45ac5dbbef2502f3cea8d9"},"headline":"How to assign a C# struct to another struct?","datePublished":"2024-03-16T01:56:25+00:00","dateModified":"2024-03-22T01:58:39+00:00","mainEntityOfPage":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-assign-a-c-struct-to-another-struct\/"},"wordCount":105,"commentCount":0,"publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/blog\/how-to-assign-a-c-struct-to-another-struct\/","url":"https:\/\/www.silicloud.com\/blog\/how-to-assign-a-c-struct-to-another-struct\/","name":"How to assign a C# struct to another struct? - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/#website"},"datePublished":"2024-03-16T01:56:25+00:00","dateModified":"2024-03-22T01:58:39+00:00","breadcrumb":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-assign-a-c-struct-to-another-struct\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/blog\/how-to-assign-a-c-struct-to-another-struct\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/blog\/how-to-assign-a-c-struct-to-another-struct\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.silicloud.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to assign a C# struct to another struct?"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/blog\/#website","url":"https:\/\/www.silicloud.com\/blog\/","name":"Silicon Cloud Blog","description":"","publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.silicloud.com\/blog\/#organization","name":"Silicon Cloud Blog","url":"https:\/\/www.silicloud.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","contentUrl":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","width":1024,"height":1024,"caption":"Silicon Cloud Blog"},"image":{"@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/SiliCloudGlobal\/","https:\/\/twitter.com\/SiliCloudGlobal"]},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/3ff7b3da0e45ac5dbbef2502f3cea8d9","name":"Olivia Parker","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/56c66f189ba32a6f9eb50f31a38fe774e2a725c213d4070835ccc51b8fbbc54b?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/56c66f189ba32a6f9eb50f31a38fe774e2a725c213d4070835ccc51b8fbbc54b?s=96&d=mm&r=g","caption":"Olivia Parker"},"url":"https:\/\/www.silicloud.com\/blog\/author\/oliviaparker\/"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/23729","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/users\/11"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/comments?post=23729"}],"version-history":[{"count":1,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/23729\/revisions"}],"predecessor-version":[{"id":57722,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/23729\/revisions\/57722"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/media?parent=23729"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/categories?post=23729"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/tags?post=23729"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}